Methods, systems and devices for packet watermarking and efficient provisioning of bandwidth

ABSTRACT

Disclosed herein are methods and systems for transmitting streams of data. The present invention also relates to generating packet watermarks and packet watermark keys. The present invention also relates to a computerized system for packaging data for transmission to a user. The system may utilize computer code to generate a bandwidth rights certificate that may include: at least one cryptographic credential; routing information for the transmission; and, optionally, a digital signature of a certificate owner; a unique identification code of a certificate owner; a certificate validity period; and pricing information for use of bandwidth. The present invention also relates to an electronic method and system for purchasing good and services by establishing an account whereby a customer is credited with a predetermined amount of bandwidth usage, and then charges are assessed against the account in an amount of bandwidth usage which corresponds to the agreed upon purchase value for the selected item.

RELATED APPLICATIONS

This application is a continuation of application Ser. No. 13/551,097, filed Jul. 17, 2012, which is a division of application Ser. No. 11/900,065, filed Sep. 10, 2007, now U.S. Pat. No. 8,224,705, which is a division of application Ser. No. 10/417,231, filed Apr. 17, 2003, now U.S. Pat. No. 7,287,275, which claims benefit to Provisional Application No. 60/372,788, filed Apr. 17, 2002. Application Ser. No. 13/551,097, filed Jul. 17, 2012, application Ser. No. 11/900,065 and Provisional Application No. 60/372,788 are each incorporated herein by reference in their entirety;

and application Ser. No. 13/551,097, filed Jul. 17, 2012 is a continuation of application Ser. No. 13/273,930, filed Oct. 14, 2011, which is a continuation of application Ser. No. 12/383,289, filed Mar. 23, 2009, now U.S. Pat. No. 8,104,079, which is a continuation of application Ser. No. 11/900,066, filed Sep. 10, 2007, now U.S. Pat. No. 7,530,102, which is a continuation of application Ser. No. 10/417,231, filed Apr. 17, 2003, now U.S. Pat. No. 7,287,275, which claims benefit to Provisional Application No. 60/372,788, filed Apr. 17, 2002.

This application is also related to the following pending applications: pending U.S. patent application Ser. No. 09/046,627, filed Mar. 24, 1998, entitled “Method for Combining Transfer Function with Predetermined Key Creation”, issued as U.S. Pat. No. 6,598,162; pending U.S. patent application Ser. No. 09/644,098, filed Aug. 23, 2000, entitled “Multiple Transform Utilization and Application for Secure Digital Watermarking”, issued as U.S. Pat. No. 7,035,409; and pending U.S. patent application Ser. No. 09/767,733, filed Jan. 24, 2001, entitled “Multiple Transform Utilization and Application for Secure Digital Watermarking”. The previously identified patents and/or patent applications are hereby incorporated by reference, in their entireties.

Each of the following pending applications is incorporated by reference, in its entirety: pending U.S. patent application Ser. No. 09/594,719, filed Jun. 16, 2000, entitled “Utilizing Data Reduction in Steganographic and Cryptographic Systems”, which is a continuation-in-part of International Application No. PCT/US00/06522, filed Mar. 14, 2000, which PCT application claimed priority to U.S. Provisional Application No. 60/125,990, filed Mar. 24, 1999, issued as U.S. Pat. No. 7,123,718; pending U.S. patent application Ser. No. 09/731,040, filed Dec. 7, 2000, entitled “Systems, Methods And Devices For Trusted Transactions”, issued as U.S. Pat. No. 7,159,116; pending U.S. patent application Ser. No. 10/049,101, filed Feb. 8, 2002, entitled “A Secure Personal Content Server”, which claims priority to International Application No. PCT/US00/21189, filed Aug. 4, 2000, which claims priority to U.S. Patent Application No. 60/147,134, filed Aug. 4, 1999, and to U.S. Patent Application No. 60/213,489, filed Jun. 23, 2000; pending U.S. patent application Ser. No. 09/657,181, filed Sep. 7, 2000, entitled “Method And Device For Monitoring And Analyzing Signals”; pending U.S. patent application Ser. No. 09/671,739, filed Sep. 29, 2000, entitled “Method And Device For Monitoring And Analyzing Signals”; pending U.S. patent application Ser. No. 09/956,262, filed Sep. 20, 2001, entitled “Improved Security Based on Subliminal and Supraliminal Channels For Data Objects”, issued as U.S. Pat. No. 7,127,615; pending U.S. patent application Ser. No. 09/731,039, entitled “System and Method for Permitting Open Access to Data Objects and For Securing Data Within the Data Objects,” filed Dec. 7, 2000, issued as U.S. Pat. No. 7,177,429; pending U.S. patent application Ser. No. 09/545,589, filed Apr. 7, 2000, entitled “Method and System for Digital Watermarking”, issued as U.S. Pat. No. 7,007,166; pending U.S. patent application Ser. No. 08/999,766, filed Jul. 23, 1997, entitled “Steganographic Method and Device”; pending U.S. patent application Ser. No. 09/456,319, filed Dec. 8, 1999, entitled “Z-Transform Implementation of Digital Watermarks”, issued as U.S. Pat. No. 6,853,726; U.S. patent application Ser. No. 08/674,726, filed Jul. 2, 1996, entitled “Exchange Mechanisms for Digital Information Packages with Bandwidth Securitization, Multichannel Digital Watermarks, and Key Management”; pending U.S. patent application Ser. No. 10/369,344, filed Feb. 18, 2003, entitled “Optimization Methods for the Insertion, Protection, and Detection of Digital Watermarks in Digitized Data”, issued as U.S. Pat. No. 7,095,874; and pending U.S. patent application Ser. No. 09/789,711, filed Feb. 22, 2001, entitled “Optimization Methods for the Insertion, Protection and Detection of Digital Watermarks in Digital Data”, issued as U.S. Pat. No. 7,107,451.

In addition, this application hereby incorporates by reference, as if fully stated herein, the disclosures of the following patents: U.S. Pat. No. 5,822,432, entitled “Method for Human Assisted Random Key Generation . . . ”; U.S. Pat. No. 5,905,800, entitled “Method & System for Digital Watermarking”; U.S. Pat. No. 5,613,004, entitled “Steganographic Method and Device”; U.S. Pat. No. 5,687,236, entitled “Steganographic Method and Device”; U.S. Pat. No. 5,745,569, entitled “Method for Stega-Protection of Computer Code”; U.S. Pat. No. 6,078,664, entitled “Z-Transform Implementation of Digital Watermarks”; U.S. Pat. No. 5,428,606, entitled “Digital Commodities Exchange”; U.S. Pat. No. 5,889,868, entitled “Optimization Methods for the Insertion, Protection and Detection . . . ”; U.S. Pat. No. 6,522,767, entitled “Optimization Methods for the Insertion, Protection and Detection . . . ”; U.S. Pat. No. 5,539,735, entitled “Digital information Commodities Exchange”; and U.S. Pat. No. 6,205,249, entitled “Multiple Transform Utilization and Application for Secure Digital Watermarking”. The following article is also incorporated herein by reference: “Bandwidth as Currency,” IEEE Multimedia, January/March 2003 (Vol. 10, No. 1), by Scott Moskowitz.

BACKGROUND

A need exists for optimizing and provisioning the allocation of bandwidth. This is to assure better handling of the competitive needs between networks and the concept of Quality of Service (“QoS”), including determining the priority of available bandwidth in a given network. The prior art addresses priority of transmission paths for data in an attempt to alleviate bottlenecks within a given network. Caching technologies, as an example, seek to push higher demand data closer to the access points for which the data is demanded, so-called “edge traffic.” A related approach, Quality of Service (“QoS”), attempts to make decisions about bandwidth accessibility based on a user's ability to access material within some predetermined time frame. For instance, if X number of users are able to access Y amount of bandwidth over some fixed period of time T, bandwidth can be estimated as a function of satisfying users X, or some percentage of X, for each increment of Y divided by T.

Users, however, may seek data objects note that the terms “data object”, “data”, “discrete analog waveform”, or “data signal”—may be used interchangeably in this application) which by their very structure or format may occupy large amounts of bandwidth, thereby creating bandwidth demand that has little or no relationship to how the data is valued by third parties, including owners of the rights related to the objects. An example is the higher bandwidth demand and creation of network latency when streaming an audio or video signal, where, in addition, the data signal itself may be copyrighted. It is reasonable to assume that a copyrighted work does indeed have more value than one that is not copyrighted.

If a network can be used to handle any number of data files which can be aesthetic or not (for instance, functional data, such as algorithms, which itself manipulates data, would be considered to be non-aesthetic), and the value of the potential data may not be known in advance of provisioning for understanding how to handle bandwidth, this disclosure is designed to address some of the key factors in enabling a market for handling bandwidth and related transactions for data, which is made up of bandwidth in terms of how the data is rendered, manipulated, distributed and “potentially” priced given delivery and derivatives pricing to assist in the aggregate with delivery (particularly, commercial, so as to maximize the value of a network at any given point in time) of said objects. Another example is peer-to-peer network technologies that may tie-up bandwidth based on extensive database functions to bring two or more parties together seeking some data object without regard to the object's price or the underlying cost of maintaining peer-to-peer links to enable transfers of files between users. Additionally, the data object being demanded may not be readily determined to have ownership, authentication or responsibility necessary for successful commerce. This includes virtual private networks (“VPN”) or demands made for security by senders, receivers, or combinations of both. Such clearinghouse features have been proposed by digital rights management (“DRM”) providers but they lack the efficiencies and consumer demand which are required to handle data objects in a manner consistent with historical sales of a variety of data objects offered in physical formats. Systems such as Napster™, have been estimated to command as much as 4% of overall Internet bandwidth and yet no financial transactions exist to pay for either this extensive use of network bandwidth or any affiliated ownership and usage rights of the data being exchanged nor the historical value of said objects in other mediums such as physical objects containing the data (for example, copyrighted music files).

TCP, or Transmission Control Protocol, is currently used to break data into packets for transmission, which are received and reconstructed, sequentially at the receiver's end of the transmission. Technologies exist to assist with error correction when packets are dropped or lost during transmission, IP, or Internet Protocol, is designed to provide each networked “device” with an IP address. Packets sent under TCP and labeled with IP addresses enable data to be broken into packets and sent between machines that share TCP/IP coding schemes. In IP version 4 (“IPv4”), the current Internet Protocol, there are option fields that can be exploited at any place in the transmission chain for writing/embedding and detecting/recovering digital watermarks, a feature of embodiments in the present invention, for provisioning and pricing schemes, bandwidth prioritization, management systems, dispute resolution and clearinghouse functions. IPv4 allows up to 40 bytes of options; the size of IPv6 extension headers will only be constrained by the size of the IPv6 packet. Because of the sequential nature of TCP/IP a variety of optimizations have been suggested in the art. These include better ways of handling packets that may not have arrived at the intended address, or may have been lost during the transmission for any number of reasons (timing, error, overcapacity, rerouting, etc.).

One means for optimizing network speed is based on application of Reed-Solomon error correction coding. Because TCP/IP packets represent predetermined packets of data, that is, have a specific size without regard to the data object (e.g., its characteristics, perceptible or otherwise) being rendered, coarser estimates of the data objects' aesthetics or characteristics enable mathematical values to be assigned to a larger portion or subset of the data object itself. A simple linear equation can be used to define the independently derived values representing the data object. These mathematical values represent groupings of packets that are not sequentially ordered but fitted to the characteristics of the data object being broken down for transmission. These values can be handled by the systems or devices of the sender and receiver of the data to speed transmission or routing of the data. Using error correction coding, chunks are not sequential, as with TCP, but are generated with variations on Reed-Solomon code so that receivers of the data get chunks of the transmission that can be reconstructed non-sequentially but efficiently so long as the assigned values for the data are received. The chunks may also overlap the packets that would typically represent the object. In some applications, those signal features of the data which are deemed relatively, perceptibly important are reconstructed first on the receiving end of the transmission. This approach has the effect of speeding the routing of data over a network, such as the Internet.

IPv6 includes proposals for additional optimizations. In contrast with current IPv4 systems which are optimized to handled end-to-end transmission of data, without regard for the content of the data itself, attention has turned to enabling traffic prioritization, low level authentication with encryption, and better handling of audio and video streams. The present invention seeks to enable better granularity in handling data packets with a labeling scheme that can be handled by network infrastructures. Also essential is the authentication protocol to prevent labeling fraud. Specifically, the present invention offers a means for utilizing watermarks, in a manner that differs from traditional notions of digital watermarking (i.e., as information hiding in discrete objects), to prioritize data traffic and also to define the data being transmitted in terms consistent with any rights or ownership over the content being represented by the data. Provisions for clearinghouse facilities and certification of traffic are also contemplated by this document. Secondary or derivative markets for assisting in enabling efficiencies for the pricing of the bandwidth utilized are also, by extension, contemplated.

SUMMARY OF THE INVENTION

Disclosed herein is a method for transmitting a stream of data, which method comprises the steps of: receiving a stream of data; organizing the stream of data into a plurality of packets; generating a packet watermark associated with the stream of data; combining the packet watermark with each of the plurality of packets to form watermarked packets; and transmitting at least one of the watermarked packets across a network. The method may further comprise the steps of receiving at least one packet that has been transmitted across a network; analyzing at least one packet for a watermark and authenticating the at least one packet using at least a portion of the watermark; and in the event that the analysis authenticates the at least one packet, permitting the transmission of the at least one packet, and in the event that the analysis does not authenticate the at least one packet, generating a signal of non-authentication. In generating a packet watermark, the present invention may include the steps: generating a watermark packet key; associating a unique identifier with the watermark packet key; and generating a packet watermark comprising the unique identifier associated with the watermark packet key. The packet watermark may be placed in a header for each of the plurality of packets to form watermarked packets. Optionally, the packet watermark may include a unique identifier associated with the watermark packet key, and/or a hash output for a portion of the stream of data. Optionally, in the event that the analysis does not authenticate a packet, the invention may: i) halt the transmission of the data; ii) modify the data being transmitted so that the data is either degraded in quality and/or in quantity; iii) store a copy of the data being transmitted along with information that is indicative of a failure to authenticate occurred; and/or iv) delay the transmission.

Also disclosed herein is a system for transmitting a stream of data, comprising: a processor to receive a stream of data and to organize the stream of data into a plurality of packets; a generator to generate a packet watermark associated with the stream of data; a packager to combine the packet watermark with each of the plurality of packets to form watermarked packets; and a transmitter to transmit at least one of the watermarked packets across a network. The system may further comprise one or more routers, which router may include: a network receiver to receive a packet that has been transmitted across a network; and a network processor coupled to the network receiver for analyzing the packet for a watermark that can be used to authenticate the packet; whereby in the event that the analysis authenticates the packet, the router permits the transmission of the packet to continue, and in the event that the analysis does not authenticate the packet, the router generates a signal of non-authentication. The generator may include: a module to generate a watermark packet key; a module that associates a unique identifier with the watermark packet key; and a watermark generator to generate a packet watermark, which itself may include the unique identifier associated with the watermark packet key and/or a quality of service level associated with the data stream. Optionally, the generator may include a hashing module to generate a hash output for a portion of the stream of data, which hash output may be included in the packet watermark.

Also disclosed is a method for packaging data for transmission to a user, comprising the steps of: receiving content data that is desired by a user; organizing the content data into at least two packets; generating a packet watermark associated with at least one of the packets of data; generating a bandwidth rights certificate; and combining the bandwidth rights certificate, the packet watermark, and the at least one packet for transmission across a network comprising a plurality of routers. The bandwidth rights certificate may include: at least one cryptographic credential; and routing information selected from the group consisting of authorization data to authorize use of at least one particular router and priority data to prioritize use of at least one particular router.

Also disclosed is a computerized system for packaging data for transmission to a user, which system comprises: a receiver to receive content data; computer code to organize the data into at least two packets; computer code to generate a packet watermark associated with at least one of the packets of data; computer code to generate a bandwidth rights certificate; and computer code to combine the bandwidth rights certificate, the packet watermark, and the at least one packet, for transmission across a network comprising a plurality of routers. The bandwidth rights certificate may include: at least one cryptographic credential; and routing information selected from the group consisting of authorization data to authorize use of at least one particular router and priority data to prioritize use of at least one particular router. The bandwidth rights certificate may also include one or more of the following: a digital signature of a certificate owner; a unique identification code of a certificate owner; a certificate validity period; and pricing information for use of bandwidth. Optionally, the system may include a storage medium for storing bandwidth rights certificate and/or one or more packets of data. The system may be configured to operate on a hardware device selected from the group consisting of: a personal computer, a cable box, a telephone, a cellular telephone, a personal digital assistant, a personal music playback device, and a smart card.

Also disclosed is an electronic method for purchasing good and/or services, which comprises the steps of: establishing an account whereby a customer is credited with a predetermined amount of bandwidth usage; establishing a communication link with a vending system; selecting an item to be purchased; agreeing to a purchase value for the selected item; communicating to the vending system a request to purchase the selected item; and causing a debit to the account in an amount of bandwidth usage which corresponds to the agreed upon purchase value for the selected item. The communication link may utilize bandwidth on a given network, in which case the method may include the further step of causing a debit to the account in an amount of bandwidth usage which corresponds to the bandwidth usage associated with the time utilized in purchasing the item using the communication link. A debit may be in an amount of bandwidth usage which corresponds to an agreed upon transactional charge.

Also disclosed is an electronic method for selling good and/or services, and for collecting payments from a purchaser's account, which account has a predetermined amount of bandwidth usage. This method may include the steps of: establishing a communication link between a vending system and a purchasing system; receiving a request to purchase a selected item; determining a purchase value for the selected item; causing a debit to the purchaser's account in an amount of bandwidth usage which corresponds to the agreed upon purchase value for the selected item; and sending an instruction to deliver the selected item. This method may be useful when purchasing copies of digital data, when the method may be used to create a copy of digital data and to embed a record of the transaction into the copy of the digital data. When the communication link being established utilizes bandwidth on a given network, the method may include the step of causing a debit to the account in an amount of bandwidth usage which corresponds to the bandwidth usage associated with the time utilized in purchasing the item using the communication link. The debit may be made in an amount of bandwidth usage which corresponds to an agreed upon transactional charge. The method may also confirm that the debit to the account has been completed before sending an instruction to deliver the selected item.

Also disclosed is an exchange system for selling good and/or services, and for collecting payments from a purchaser's account, which account has a predetermined amount of bandwidth usage. The system may include: a communicator to establish a communication link between the exchange system and a purchasing system, whereby the two-way communication system can receive a request to purchase a selected item; a display for advertising, for sale, good and/or services; a transaction module for determining a purchase value for a selected item; a debit module for causing a debit to the purchaser's account in an amount of bandwidth usage that corresponds to the sum of: i) the purchase value for the selected item and ii) a transactional charge; and a delivery module for sending an instruction to deliver the selected item. The system may also include a dispenser to deliver the selected item. The system may also include an interface (for example, software and/or hardware) physically located on the exchange system to permit the selection for purchase of at least one items. The debit module may include a communication link with a third party system, whereby the debit module sends a request to debit the purchaser's account in an specified amount of bandwidth usage, and whereby the third party system causes the debit in the specified amount

Finally, a system for the transmission of data is disclosed. This system may include: a receiver to receive content data; a processor to organize the content data into a plurality of packets; a watermark generator to generate at least a portion of a packet watermark associated with at least one packet of data; a certificate generator to generate a bandwidth rights certificate associated with at least one packet of data; and a transmitter to transmit at least one of the plurality of data packets, its associated watermark, and its associated bandwidth rights certificate across a network. The bandwidth rights certificate may include routing information selected from the group consisting of authorization data to authorize use of at least one particular router and priority data to prioritize use of at least one particular router. The system may also include a router to receive a transmission comprising a data packet, its associated watermark, and its associated bandwidth rights certificate, which router is configured to analyze the transmission and to check the authenticity of the transmission, and in the event that the analysis does not authenticate the transmission, the router generates a signal of non-authentication. In the event that the analysis does not authenticate the transmission, the router may take an action selected from the group consisting of: halting the transmission; delaying the transmission; and re-routing the transmission to a router for which the transmission is authenticated. The router may be configured to analyze and authenticate the transmission by checking a plurality of packet watermarks.

By means of associating a data object with a watermark, the present invention can analyze at the data that has been prepared for network delivery. Using the present invention, data can now be sent to a receiver in a manner which provisions bandwidth in an efficient manner (the novel embodiments described herein). When a single file is watermarked, it can be made as a unique copy. An advantage of the present invention is that it can create “postage for packets” (more articulately described as “bandwidth provisioning”). The present invention provides better granularity of what packets are demanded versus other packets. By means of associating identity and authenticating information of the packets, the present invention can more efficiently apportion bandwidth to meet market demands which are based on demand for information over networks and a better ability to identify the packets people are willing to pay for. The present invention also permits a better accounting system so that packets can be billed to the appropriate parties, and permits disputes to be more objectively resolved because the present invention can use cryptographic protocols that help to assure a higher level of confidence in how provisioning is being handled. Similarly, the present invention makes it possible to charge for bandwidth in a manner more closely similar to a traditional telephone billing system. The difference is that telephone billing systems do not take into account the contents or paths of packets, per se, nor do traditional telephone systems assist in creating a means for competitively evaluating bandwidth based on consumer demand for data which can be compared in media terms (type of media, rights, authenticity of the data, quality level of the media based on a differential price, etc.) not solely data size terms.

Using the present inventions, a network can check and verify efficient bandwidth delivery on a packet level and can store information concerning better paths between senders and receivers of these packets. The present inventions permit optimized “flows” so to speak. For certain economic or business models, further features may be added to make internet handling of data similar to how billing works for traditional telecommunications by phone companies. Such companies buy bandwidth resources in bulk by contract and do not have any underlying understanding of what the bandwidth is used for nor how to encourage higher value for any given bit for each bit per time calculation. There is no technology that does this either in the existing art Since the denominator, time, is fixed at any discrete moment, maximizing economic value for the numerator (the bit) given a market for information and goods and services that are informationally based, higher economic value can be attributed to a given network or networks which implement the features embodied herein. While no one can know in advance what the demand for a given data object—prior to being exposed to a marketplace of participants, parties can agree to the cost of bandwidth for a given business activity (streaming a live concert, handling bandwidth based transactions which are tied to a subscription with a bandwidth device such as a cell phone, choices between a streamed or copyable version of a data object, etc.). Streaming, to date, has never been made economically viable because, in part, vendors have not taken a packet level view of the flow of data to people demanding a stream. Nor have vendors tied payment or willingness to pay to the packets. This is where the present invention differs.

This document addresses three things to assist in getting this done: efficient provisioning of the packets on the network the creation of a so-called “packet watermark”; creation of bandwidth credentials “to enhance liquidity and derivative pricing provisioning for future estimated use of bandwidth”; and market mechanisms with cryptographic protocols to assist in billing and resolution disputes, both for the packets themselves, and as an extension application of traditional watermarking to the data objects as a whole to uniquely identify the object as with previous watermarking disclosures. Preferably, packet watermarked data does not interfere with traditional watermarks to establish responsibility for the objects being transacted, since the consumer has no care about what the packets are but may benefit if the consumer is able to observe which paths are best for getting information. Vendors selling information similarly would pay premiums for a better understanding of this granularity. This may be to avoid “double payments” of bandwidth where they handle the sending and receiving costs—instead of a path between a sender and receiver.).

The present invention adds the novel layer of identity of the packets and subsequent provisioning by means of authenticating packets along a particular path (“flow”) and perhaps using the best path as history about various paths are captured by a database used for such purposes. Heuristics may be applied as the system learns the best paths for packets so that future or subsequent use can be optimized. Taken to another level, the packets can be further analyzed based on what the data is, if such identification is also provided. Packet watermarks and data object watermarks are two methods, one micro and macro, in terms of the data's aesthetics or utility to the sender and receiver. While packets may be useless as packets, in the aggregate, data objects have value. This value is determined by a market place for information that can create receipts for the objects and also postage for the packets.

DETAILED DESCRIPTION Packet Watermarking for Quality of Service Delivery

A watermark is a data object embedded inside a carrier that is used to authenticate the carrier without interfering with its normal usage. The classic historical example is a watermark in a bank note that authenticates the paper used for printing. More recently, digital watermarks have been developed to imperceptibly embed data in rich content objects to transmit all varieties of information. Digital watermarks can also be applied to functional data such as software or code by means of obfuscation of the actual functional code, license information, identity, or other uniqueness hidden in similar or nonfunctional code. Software watermarking is intended to assist in authenticating code in a manner more robust to the underlying functionality of the software than can be accomplished by simple digital signing of the code. Signing aesthetic or functional data at the inherent granularity of perception or function enables authentication of said data even after data compression or code optimization; but such watermarking can also be used to detect manipulations of the data at a subsequent time. The following applications and pending applications represent a variety of digital watermarking and steganographic ciphering applications, and are incorporated herein by reference: U.S. patent application Ser. No. 09/046,627, filed Mar. 24, 1998, entitled “Method for Combining Transfer Function with Predetermined Key Creation”; pending U.S. patent application Ser. No. 09/644,098, filed Aug. 23, 2000, entitled “Multiple Transform Utilization and Application for Secure Digital Watermarking”; pending U.S. patent application Ser. No. 09/767,733, filed Jan. 24, 2001, entitled “Multiple Transform Utilization and Application for Secure Digital Watermarking”; pending U.S. patent application Ser. No. 09/545,589, filed Apr. 7, 2000, entitled “Method and System for Digital Watermarking”; pending U.S. patent application Ser. No. 08/999,766, filed Jul. 23, 1997, entitled “Steganographic Method and Device”; pending U.S. patent application Ser. No. 09/456,319, filed Dec. 8, 1999, entitled “Z-Transform Implementation of Digital Watermarks”; and pending U.S. patent application Ser. No. 08/674,726, filed Jul. 2, 1996, entitled “Exchange Mechanisms for Digital Information Packages with Bandwidth Securitization, Multichannel Digital Watermarks, and Key Management.” Other pending applications apply to a model for bandwidth optimization using digital watermarks: pending U.S. patent application Ser. No. 10/369,344, filed Feb. 18, 2003, entitled “Optimization Methods for the Insertion, Protection, and Detection of Digital Watermarks in Digitized Data”; and pending U.S. patent application Ser. No. 09/789,711, filed Feb. 22, 2001, entitled “Optimization Methods for the Insertion, Protection and Detection of Digital Watermarks in Digital Data”, which applications are incorporated herein in their entireties. Less attention, however, has been paid to the concept of perceptible but non-interfering digital watermarks.

The Internet Protocol (IP) encapsulates all traffic inside packets. The previous description of IP applies here. A specific data object is broken into two or more packets, based on size. Each packet has a header that contains addresses, routes, and other identifying information. Many parties have addressed the security of packets, including such standards as IPSec. These protocols allow for encryption and authentication of packets and flows of packets, whereby the receiver can be assured of the secrecy and authenticity of each packet. However, these systems are all designed to create a secure interchange between compliant parties. What is missing is a system by which the sender can guarantee a particular Quality of Service (QoS) to a receiver without entering into a cryptographic exchange with the receiver, using the existing and proposed Internet protocols without modification. This invention covers a novel combination of watermarking techniques with Internet Protocols to create such a system.

When a receiver requests a data object from a sender, the sender creates a packet flow with the receiver's address and sends it out into the Internet. The packets may make many hops before arriving at the receiver's IP address. At each node, a router examines the address and chooses a route to the next node. Often there are many possible routes from each node to the final destination. These routes may be ranked by a number of criteria, including current load, historical load, historical reliability, current latency, and historical latency. All of these factors could be used to route individual packets by more or less optimal paths—assuming that the router could discriminate between different flows. The packet watermark becomes the method by which the router identifies streams and creates differential QoS.

Simply labeling a packet as express, regular, or slow delivery is insufficient. There is no way to enforce compliance with the label. Quickly, everyone would be marking their packets “express” and there would no longer be differentiation. This is an example of the “free-loader” problem. A “packet watermark,” on the other hand, is cryptographically associated with the contents of the packet itself. For example, a traditional digital watermark may be dependent on signal characteristics of the signal being watermarked. If a key-based system is used for watermarking, a cryptographic association between the key and the signal via the watermark may be created. Besides the noise or signal characteristics in the signal itself, the key may be seeded by independent random information to make it more difficult to guess (meaning randomness independent form the signal to be watermarked to make guessing the key more computationally difficult—if a watermark is based solely on the signal and its inherent noise, finding the needle in the haystack is simply a searching problem, not a computationally difficult problem), even if the watermark is found in the signal. Key-based watermarks are used to authenticate or verify a data signal to establish responsibility for said signal or alert users of unauthorized data signal copies. Unauthorized use of a particular routing priority could be detected by a packet sniffer, which sampled a fraction of the overall traffic to detect, and deter, abuse of the system. The sniffer reads the watermark on the packet, checks the authentication, and signals invalid packets. The flow can then be rerouted, delayed or halted, depending upon the terms of the commercial contract. Additional embodiments of the present invention can assist in enabling a workable exchange that may further alert participants of the exchange of particular users or unauthorized parties. This can assist in preventing Denial of Service (“DoS”) attacks and similar misuse of network traffic. Conversely, the exchange may maintain histories of the effectiveness of particular routes or particular parties that may command a premium price or similar consideration for the “recognition” or “reputation” a party has attained.

Some form of recognition or identification of data streams may be handled by firewalls, intrusion detection systems and similar analysis to assure data integrity. These common techniques rely on comparisons with prior history of the data stream or data associated with it and may include heuristic or Bayesian methods for optimizing inherently comparative approaches. The present invention contemplates potential optimizations in authentication or verification of data streams and their associated packet watermark[s] by determinations of any or combinations there of the following: Ethernet IDs, port IDs, URLs, DNS addresses, IP addresses, related data streams, related packet flows, XML or meta-data associated with the data streams or data objects, intrusion detection techniques, virus detection techniques, and a logical context of the packets' origin or destination. To this extent, the present invention may integrate data integrity checks along with its data authentication functions.

Sample Embodiment

In one embodiment of the present invention, the packet watermark may be used to classify a stream of data for a particular QoS. In particular, the stream of data may be organized into a plurality of packets, and the sender may add a watermark to the header of each packet comprising the stream. The size of the watermark may vary, but for illustration, a 32-bit watermark is used. Preferably, the same 32-bit watermark may be placed in each and every packet in the flow. In a particular case of TCP/IPv4, the 32-bit watermark may be stored in the Stream ID option field (i.e., in the header) in the IPv4 packets. To indicate a QoS level for the flow, a portion of the watermark may be reserved for a QoS level identifier. For example, in the example of a 32-bit watermark, the 4 MSB's (“most significant bits”) of the watermark could be used to identify the QoS level, yielding 16 available levels, and the remaining 28 bits of the watermark could be used to uniquely identify the flow.

The 32-bit watermark, or a portion thereof, may act as an identifier. No particular format is required for the watermark, and accordingly almost any format may be used. In the example illustrated, the 4 MSBs are used for the QoS level, and the remaining 28 bits can be used to store a unique identifier. One possible use for the remaining 28 bits is to store a unique identifier that is associated with a watermark packet key—which key can be used to help authenticate the data flows.

For example, the slender may create an array of SHA-1 hashes (or any hashing protocol deemed secure by the party or parties mutually) of the flow using a 4096 bit random sequence (the 4096 bit random sequence is referred to as the “Watermark Packet Key”). More particularly, the input to a hash function is comprised of three things: the Watermark Packet Key (in this case, 4096 bits), the Watermark (in this case, 32 bits), and a portion of the flow (for example, that portion of the flow that will be placed in a given packet). It is anticipated that the portion of the flow to be used as input to the hash function may comprise that the flow associated with one, two or even more data packets, but for purposes of illustration, the flow associated with one packet is used (i.e., the portion of the flow that will be inserted into one TCP/IPv4 packet). The output of the hash may have a predetermined number of bytes (usually as pre-determined by the hash function—for example, 20 for SHA-1). The array is the set of all of the hash outputs generated using successively portions of the flow until the complete flow has been processed. The outputs of the hash, the Watermark Packet Key, and the 32-bit watermark are combined to create the Watermark Identification (“WID”).

Accordingly, the watermark can be matched o a corresponding WID (by comparing the watermark in a packet with the watermark in a WID to see if they have the same unique identifier associated with a given watermark key). The component parts of the WID may then be used to check the authenticity of the flow. For example, the watermark key from the WID can be used with the data flow from the data packet to create a hash output, which can then be compared with the corresponding, previously generated hash output stored in the WID. If the newly generated hash output matches the previously generated has output, then the data is considered to be authenticated. Moreover, if a portion of the watermark is used to identify a particular QoS level, then the data can be evaluated for compliance for a particular path (such, as for transmission by a compliant router).

In this illustrated embodiment, 4 MSBs of the watermark have been used to identify a QoS level. This is simply a suggested format. Any predetermined bits 4, more than 4, less than 4, whether MSBs or LSBs or even nonadjacent bits) may be used. It is preferable, however, that the same watermark be used within each packet of the stream. It is also contemplated that the watermark may contain no QoS indicator, in which case, all of the bits allocated for the watermark may be used for a unique identifier such as that associated with a particular watermark packet key.

The WID holds all of the dependent data. There is only one 32-bit watermark assigned for each stream, and one WID created. The Watermark Packet Key may be reused. So the WID may look like this:

4 bytes (32 bit watermark, inclusive of any QoS indicator)

512 bytes (4096 bit Watermark Packet Key)

20 bytes (hash output from the first block of the flow of data steam)

20 bytes (hash output from the second block of the flow)

20 bytes (hash output from the third block of the flow)

. . .

20 bytes (hash output from the last block of the flow)

The size of the blocks used for hash input may be determined by the ratio described below.

Each router along the path of the flow can read the watermark and determine its QoS by using those bits associated with the QoS indicator (in this case, the 4 MSB's of the watermark). Each router can then take appropriate action for prioritizing or deprioritizing each packet. These actions might include: choosing a path based on load, reliability, or latency, or buffering lower priority packets for later delivery.

The router may be configured to check the authenticity of each packet. Preferably, a router may be configured to check a subset of the packets for authenticity (thereby, reducing overhead computational requirements). For example, copies of a predetermined, small percentage of watermarked packets may be diverted to a sniffer. Preferably, the sniffer has received the WID's for all authorized flows either before receiving the flows or in a time frame that is contemporaneous. The sniffer compares the watermark of the copied packet to its WID table to find the appropriate WID. If a corresponding watermarking key is not identified, the packets are deemed unauthorized and the router is instructed to deprioritize, or, preferably, to block the flow of inauthentic data. If a corresponding WID is found, the sniffer calculates a hash output (for example, using the SHA-1 hash of this example) for the packet and attempts to match it to the corresponding hash in the WID. If the hash values match, then the router permits the flow to continue on its path. If the hash values do not match, the packets are deemed un-authenticated, and the router is notified.

Preferably, the watermark generator software is responsible for maintaining a specific list of sniffers that are to receive the WID. For each one of these, the WID is preferably sent encrypted and signed, using a public key technology, such as PKIX certificates or Open PGP keys. It is envisioned that the watermark generator will be responsible for delivering the WID to trading partners who have established a prior business arrangement, and the WID will be passed along to additional devices by the trading partners, thus eliminating scaling problems at the sender. These may comprise, moreover, functions handled by the exchange and clearinghouse features of the present invention, disclosed below.

It is contemplated that the present invention may permit control over a ratio of the sizes of the original data to the size of the WID made from that data. A typical ratio might be 100:1, which means that every 100 bytes of original data create 1 byte of hash. Generally, it is desirable for a sniffer to collect 2× the original number of bytes to guarantee enough data to calculate a hash, given that the sniffer does not know a priori what the original size of the number of bytes. For very large flows, 100:1 may create unacceptable large WID's. The ratio can be set to any value. As the ratio decreases, the WID delivery channel needs to get larger. As the ratio increases, the amount of original content necessary to the sniffer increases, as does the amount of the flow that can pass before an authorization check can be completed. By making the ratio sensitive to data type and size, the system can be dynamically optimized to meet the needs of the market, To more fully extend the benefits of this embodiment we generalize additional novel features absent in the art concerning, management, pricing mechanisms, clearinghouse and dispute resolution methods and systems.

Exchange and Provisioning for Bandwidth Optimizations Defining the Value of Bandwidth Rights

It is an object of the present invention to create methods for allocating bandwidth resources. One approach is to break the bandwidth into discrete, usable component pieces, and enable an electronic market system to set a price for the commodity (“the bandwidth”) setting an equilibrium level of supply and demand. The net effect of this approach, and its anticipated trading system, will be to efficiently apportion bandwidth to users who wish to download or upload value-added information, in whatever form it takes (including value-adding components, or VACs—disclosed in TRUSTED TRANSACTIONS—). This includes efforts to broadcast or stream data as well. Bandwidth affects the speed of information transfer. Bandwidth is defined as bits per second. If more bandwidth is used, speed increases, and the transfer is accomplished in less time. A need exists in the art for deciding which bits should be prioritized versus the fixed amount of time available to route or transmit the bits. Valuing bits in a bandwidth context is similar to quantizing risk in other commodities' transactions.

Mathematical techniques exist which are applied to financial instruments to break risk down into discrete components to better predict or forecast financial decisions. Better measures of risk assist in making better decisions concerning the allocation of resources. Allocation of bandwidth resources is another increasingly important financial decision in an information economy. These may include investment decisions or insurance decisions. Investment decisions regard the choice to allocate financial resources in a manner to optimize the return on the investment. Insurance is designed to use actuarial estimates of a given data object or commodities' history and condition to estimate a cost for covering the potential loss or damage of the data object. Because it is difficult to predict what data object (thus, bandwidth) will be demanded and thus how to assist in estimating the potential economic value of such demand for a given network, pricing models need to be used to assist in quantizing risk, exchange mechanisms are required to facilitate trades, and cryptographic protocol applied to assure confidence in the provisioning of bandwidth.

Focus has been made on options pricing models, such as the well-known Black-Scholes option pricing mechanism, and variations which exist to better estimate and quantize risk for a commodity that is being optioned (so-called “derivatives”). Given the imprecise nature of bandwidth allocation, without regard to decisions concerning the supply and demand of said bandwidth, the present invention introduces a number of improvements to the handling of data (e.g., provisioning) and by extension the bandwidth used to represent said data. Some of the mathematical techniques for pricing models, including Black Scholes, will be outlined below. These techniques can be used to facilitate better pricing in addition to the increased efficiencies evident with bandwidth provisioning using packet watermarking described above (applied to packets and in some cases additionally the data object—a micro and macro approach). Bandwidth is a commodity and by extension a potential form of currency that is better priced with financial tools such as options and other derivatives. Being able to communicate only that which people are willing to pay for, requires integration of identification and authentication of bandwidth between parties.

Black-Scholes is easily represented by the following properties, which can be further generalized mathematically. The standard deviation of the asset's value (that which is optioned) multiplied by the square root of the time of the option's expiration. Essentially a ratio of the asset value to the present value of the option's strike price. The strike price is the price at which the option is being offered and later exercised.

Simply:

First) Standard deviation of the asset's value multiplied by the time of the expiration the option=

Second) The underlying asset value/the present value of the option's exercise price option exercise price/(interest rate) superscript time of the option

To purchase or to sell is the difference in the right of the option that is called a “call” or a “put” (the right but not obligation to “sell”, a call is the right to “buy”, the underlying asset covered by the option).

More generally, the Black-Scholes equation is as follows:

C ₀ =S ₀ N(d ₁)−Xe ^(−rfT) N(d ₂)

Where

S₀=the price of the underlying asset (a predetermined value)

N(d₁)=the cumulative normal probability of unit normal variable d₁

N(d₂)=the cumulative normal probability of unit normal variable d₂

X=the exercise price

T=the time to expiration or maturity of the option

r_(f)=the risk free rate (a value which can be predetermined at the time of pricing the option)

e=the base of natural logarithms, constant=2.7128 . . .

d ₁=[(In(S/X)+r_(fT))/(σ√T)]+[1/(2σ√T)]

d ₂ =d ₁ −σ√T

Helpfully, by isomorphic relationships we can extend the Black Scholes model to discrete mathematics which, as is known in the art, is able to handle continuous time and proof of the limit of options pricing. The present invention sets a limit for how much we can know in estimating the price of the option given both objective (that which can be predetermined) and subjective (that which like “indeterminable” or “unpredictable” risk cannot be predetermined) data elements. Making Black Scholes discrete also enables the present invention to describe more concretely aspects of optimizing bandwidth as an asset for which risk exists in how it should be allocated or used.

If an individual instance of the present invention's proposed instrument is a bandwidth right (as well, by extension an “option” which is the right but not obligation to purchase the underlying covered commodity within some predetermined period of time: in this case bandwidth), it can be observed that several factors will affect its value, including the following:

Intrinsic Value

This value is measured versus a minimal standard telecommunications cost. Telecommunications infrastructure has obvious relationships with the potential cost of carrying or allocating bandwidth. Intrinsic value may differ between providers, geographic location, wired or wireless connections, and countries. To the extent there exist such differences in pricing, elements of the present invention can create cost equivalencies based on such observable differences and identify the difference in cost. If there is a single underlying telecommunications cost to the owner of the right of X dollars per time, let min₀ represent the amount of time it takes to download the information using the minimal bandwidth, and mini represent the amount of time to transfer the information at the bandwidth represented by this right. Note that

min₀≧min₁

Then the intrinsic value V₁=X×(min₀−min₁), or the amount of money saved in telecommunications costs at the higher bandwidth. The intrinsic value can be negative, which would imply a compensating premium placed on the time saved by using the more expensive transport.

Percentage Chance of Failure

This probability recognizes the generally unreliable nature of telecommunications and transmission mediums as well as underlying computer systems. There are basic and more advanced methods for estimating the so-called Quality of Service (“QoS”) of a given network which, as previously disclosed, estimates a raw measure of the percentage of bandwidth being offered to some number of users connected to network in question in capacity terms. To equate QoS with historical peer-to-peer, or end-to-end, handling of bandwidth, features of the present invention are directed. Rather than be burdened with the task of solving all of the “bugs” in a given piece of commercial software, or network, it would be better to account for failure in the valuation. This value could be adjusted over time, as the failure probability of a system becomes more apparent, or changes. Some actuarial measurement can be made as experience with the envisioned system is realized. Additionally, heuristic measures may be logged or stored to identify specific points of failures or inefficiencies to be addressed. Reputations or recognition for particular users or providers can assist in decisions made by other market participants. In short, “percentage chance of failure” represents the percentage chance a user cannot exercise its right or option (where the option is the right but not obligation to purchase an underlying asset) for bandwidth. It affects the expected value of the right. In this baseline approach, if the probability of failure is P_(f), where 0≦P_(f)≦1, and the value of the right is V₀, in the absence of failure, then:

V _(f)=(1−P _(f))V ₀.

Convenience Premium

This represents some premium, V_(C), that a person is willing to pay to transfer their information within a specified period of time (i.e. “now” or “in the next 10 minutes”). The cost to the network to achieving the demand of individual users may require predetermined estimates of how much bandwidth can be re-allocated to a user in demand or may be dynamically adjusted by factoring in some excess bandwidth to serve as liquidity for estimates of potential demand. For instance, highly sought after data objects or data streams may cause higher demands for bandwidth in real time or may be reserved by exercising the right before its expiration. An exchange itself may wish to pay for the rights to provide additional needed liquidity to satisfy forecasted demand. The potential for increases in transparency by applying bandwidth provisioning, described herein, and cryptographic protocols for identification, authentication and verification, described in more detail below, make possible better mathematical estimates of the potential value of the convenience premium to all market participants.

Alternatively, the network may have higher demand which is consistent with more predictable peak periods of time of use by consumers, for instance between 4 pm and 7 pm on weekdays for consumer back from work or school. These rules can be used to filter and achieve better estimates of how bandwidth should be allocated. The rules may apply to: 1) particular or uniquely identifiable data objects 2) whether the data object is to be streamed 3) date or time schedules 4) geographic locations of either the provider or user 5) the hardware or software which underlies the network for which the bandwidth is being sought 6) other unique circumstances including live performances. Moreover, identification of the parties involved in a particular transmission may itself act as a contributing factor to increases in the value of the convenience premium: a form of recognition or reputation. The premium is also likely to come out as the market sets the price for a right. If there is a formula for what the price should be, then the premium is simply the difference between the result of that formula, and the actual market price. This really measures the balance between supply and demand. The more demand in excess of supply, the higher C will rise. V_(C) is then a function of supply and demand.

V _(real) =V _(theoretical) +V _(C)

Time Value

This is a function of the exercise period of a bandwidth right. It is proportional to P_(f), since more time allows for recovery from an individual failure to transfer. There are two components of time, over what period a transfer can be initiated and for how long the transfer can last once it is initiated. Note that this is made more complex by congestion factors. For instance, if a user has a right for 10,000 kbps for 10 seconds, and the user wants to transfer 100,000 kb, it is not likely that the transfer can be done in exactly 10 seconds. Protocol overhead and congestion will add some increment of time. It is advisable to leave room in the exercise period for these factors, rather than trying to value the time value in some manner that accounts for these transient conditions.

Features of the present invention provision for additional data and time overhead to handle congestion with market-based features. Additionally by utilizing the features previously disclosed concerning bandwidth packet watermarking, time value can be more highly granular and identifiable. Certainly, optimizing the flow of bandwidth while creating accounting and clearinghouse mechanisms for handling existing and speculative demand for bandwidth resources is a novel and beneficial feature over the prior art.

Thus:

V=(1−P _(f))(V _(I) +V _(T) −V _(C))=(1−P _(f))[(X(min₀−min₁))+V _(T) +V _(C))]

The convenience premium, V_(C), should be independent of all other values (except V). The equation behaves as follows: With increased failure probability decreasing bandwidth rights value, independent of other variables, while increased demand relative to supply would drive up V_(C). We might try to compute V_(C) by accounting for known demand and supply values, and in fact, it is of vital importance to know the supply, and to allocate it so that any right issued can be exercised within its exercise period.

Clearinghouse Functions

Additionally, it is observed that a method and system is needed to allocate supply based on demand that accounts for unused rights. This may be separate or complementary to the packet watermarking features previously disclosed or may be considered an additional feature to assure that bandwidth provisioning is properly accounted for. In other words, the system needs to over-allocate supply to some degree, knowing that some rights may go unexercised, so that demand is filled as much as possible. This is similar to airlines' practice of overbooking flights. It is also necessary in providing liquidity to the market and assuring that bandwidth is effectively allocated in a timely and efficient manner. Some mechanism must be in place to prevent attacks on the system, by a party, who, in effect, tries to corner the market in bandwidth, with no intention of using it, so that it goes unused. By extension, Denial of Service attacks are related o this unwanted occurrence. Naively, one would think that since one has to pay for the bandwidth, why would someone want to corner the market? Although bandwidth is not “free”, it should only comprise a small fraction of the value of the information to be transferred, and so this is not an unthinkable situation. Similarly, the accounting of the bandwidth used should not exceed the value of bandwidth provided. An accountant cannot charge more than the value being accounted, the economics cannot justify the cost. By breaking down the path of packets as well as provisioning for pricing based on supply and demand, features of the present invention address accountability in a transparent manner.

As well, ISPs and other providers of information must be able to engage in competitive bidding, or arbitrage, for the cost of the bandwidth they purchase and better map these purchases with demand patterns of their users or demands being made by other vendors who currently engage in sharing bandwidth resources to enable a freer flow of information across public networks. The likeliest preventive measure is the existence of competition in transmission. Additionally the methods and system contemplated herein include provisions for clearinghouse facilities and accountability handled by trusted third parties. Transactions for the rights, options and the actual trading of bandwidth can include secure time stamps, digital signatures, digital certificates, and other cryptographic protocols to enable independent third party verification and accountability. These features can be offered in real time or may be saved in separate, secure storage facilities for assisting in settlements. Where two parties may have competitive interests in any given transaction contemplated herein, secure, cryptographic credentials (such as, digital signature, secure digital watermarks, digital certificates, and the like) have obvious value to enhancing the success of an efficient bandwidth exchange. These issues are disclosed below.

Secondary Markets

Another option is the potential need to necessitate a secondary market for the trading of bandwidth, which could be divided up by a trading syndicate, and traded on a secondary basis to users. In a manner of operations, telecommunications companies perform this role between national telecommunications systems to facilitate international phone usage. But the difference with the system envisioned in the present system is that “any” user could buy bandwidth rights at times of low demand, and hope to sell them at a profit in times of higher demand. This would seem to imply the exchange itself should do some proprietary trading in this manner, both to profit, and to ensure some bandwidth is available for sale to users when they need it. This will have a purpose to serve in making the market efficient in the future. The present invention anticipates such facilities which can be created and handled by parties with an interest in the efficiencies and potential profit opportunities afforded to maximizing the value of bits being handled by any given network, or networks. Time being typically fixed for users, value of the data objects being offered being subjective, features of the present invention offer robust handling of supply and demand of bandwidth.

Bandwidth rights instruments are likely to be highly localized to specific subnets, domains, internet service providers (“ISPs”, portals, wireless networks, etc). Especially since certain types of connections may be available only from certain exchanges, and since failure probabilities are likely to vary with specific hardware, operating systems, and service providers (including ISPs). Additionally, the basic valuation equations above do not address telecommunications costs across various types of lines. This problem at least, can be solved by active maintenance of cost tables, designation codes for types of lines, and the designation of a low cost standard: a minimal intrinsic value to bandwidth is an example of a minimum cost. Secondary markets for the cash or cash equivalent value of bandwidth given the limitations of a particular means for bandwidth exchanges, including POTs, DSL, cable, fiber, wireless, etc., is enabled by features of the present invention given the link between supply and demand, additions of rights and options for time value, and the cost of bandwidth for objects being exchanged or streamed, in satisfying demand.

Bandwidth as “Currency” Between Exchanges

The problem of moving rights between exchanges can be difficult since supply/demand planning for one exchange will not translate to another, unless some means for interconnecting exchanges is developed, and exchange bandwidth planning is global. The race by many parties to link users to the Internet via varying access links (modem) including DSL, POTs, cable, fiber, wireless, satellite may further the need for common bandwidth pricing, in fact, improved handling of bandwidth is a result of the success of TCP/IP and the vendors who have integrated much of the public Internet as well as gateways to virtual private networks (“VPNs”). What is clear is that the basic structure of the present invention would facilitate such planning to the benefit of all market participants: telecommunications providers, ISPs, users and publishers as well as more general aggregators of content and bandwidth such as, phone companies, cable companies, personal digital assistant manufacturers, personal music device manufacturers, and satellite companies intending on providing services across multifarious line types.

Accountability and Cryptographic Credentials

By securitizing bandwidth rights, the creation and supply of bandwidth rights digital certificates, made unique by cryptographic methods to manage them, will also be necessary. Transferring traditional digital certificates between individuals is complicated and unnecessary without tying such cryptographic credentials into the functions of the exchange. The three main categories are: advertisement or publicly available information concerning the bandwidth rights certificates, facilities for handling the identities and financial credentials of the market of buyers and sellers, and a facility for completing or settling transactions. Independent oversight concerning disputes resolution are anticipated and benefit from the level of cryptographic protocol utilized in the present invention. Following the general principles of a securities clearing model is highly applicable. In this case, the exchange needs to create and manage an account for each party that can own or trade bandwidth rights. Additionally, a method for authenticating said party or parties is required. Use of public key infrastructure, including digital credentials such as certificates, as well as adding the additional feature of embedding these credentials into data being traded by means of a steganographic cipher or digital watermark, are clearly absent in the prior art.

Additional facilities for accountability may include digital signatures (including such variants as one time signatures, zero-knowledge proof signatures, etc.). Separating recognition or general search facilities, i.e. market data in which participants decide to enter into transactions, from transactional, audit-type facilities have the likely impact of improving the handling of noncommercial and commercial activities for the network as it balances bandwidth needs. Additionally, as all the data being handled for exchange function and fulfillment can be measured in terms of bandwidth, the present invention serves as a basis for increasing the likelihood of enabling bandwidth to act as currency for information data, as well as optimizing the economic use of telecommunications networks. With these elements, a trading market system can be implemented by the following methods:

The EXCHANGE creates and manages a supply of uniquely distinguished bandwidth rights certificates. These certificates are good for a specific period only. They may traded over the course of time, anywhere from the moment they are created to the expiration time. It is questionable whether a right should be exercisable once it is clear that even if a transfer is initiated, it cannot be completed given that right only. However, consider that the right is usable, but its value decreases rapidly as it approaches expiration (i.e. value is based on time left, not total transfer time). Once a certificate is expired it is deleted. Inclusion of more traditional notions of options, as previously disclosed would greatly assist in measuring and quantifying risk associated with bandwidth rights certificates. Hash values incorporating a time-stamp could be used to serialize certificates. Such a cryptographic method is well noted in the art. U.S. Pat. Nos. 5,136,646 and 5,136,647 (“Digital Document Time-Stamping With Catenate Certificate” and “Method For Secure Time-Stamping Of Digital Documents” respectively) describe methods for cryptographic time stamping. Besides “universal time,” used for secure time stamps, other methods for data uniqueness include digital signatures or one-way hash functions alone. These elements may include information relating to an independent, third party, the exchange where the transaction takes place, an agent or principal to a transaction, a certification authority, or some subset of the data may be handled anonymously to assure levels of anonymity which may be required in assuring higher efficiencies in handling and settling trades for bandwidth rights certificates and the associated bandwidth.

One way would be to extend the attributes of a traditional digital certificate by incorporating the present inventions novel features of how bandwidth is to be provisioned, as previously disclosed in connection with packet watermarking or faster routing processes including application of Reed Solomon or other error correction codes to network data handling, and any mechanism which can be adjusted to reflect the real-time or future price of the bandwidth certificate. If the available price is immediately based on some impending expiration of the validity period of the bandwidth right itself, OR the validity of the bandwidth rights cryptographic certificate, if the actual period of time the cryptographic attributes saved in the digital certificate is close to expiration, this value may become infinitesimal as expiration occurs. For instance an X.509 digital certificate contains the following elements:

1) Version of X.509 2) serial number of the certificate 3) the certificate holder's public key 4) the certificate holder's unique ID 5) the certificate validity period 6) The unique name of the certificate issuer 7) the digital signature of the issuer and 8) the identity of the signature algorithm.

Fields for 1) handling the bandwidth to be transacted, as per the previous discussion on how to route bandwidth packets (including the previously discussed Reed Solomon variation on transmitting packets in chunks to speed overall transmission); 2) a field for a pricing scheme; and 3) a field for additional information to assist with the pricing scheme, such as a Black Scholes options field, could be supported to handle particular embodiments of the present invention. In some cases, the certificate may not require all of the elements as they pertain to bandwidth trading and could include, at the very least:

1) The digital signature of the certificate owner (this might include the unique information relating to the exchange or hub for which the certificate is being considered for trade, especially if pricing differs amongst a plurality of similar exchanges) 2) unique ID of the certificate holder (including, for instance, a buyer, seller, or agent, and any unique information ID for which the certificate holder is committing the certificate to any of a plurality of exchanges) 3) the certificate validity period (for the present invention, this would apply to either the validity of the cryptographics employed in the certificate or the period in which the price or price equivalent value, for instance an buy or sell option or futures price, is valid) 4) the identity of the cryptographic algorithm[s] which is used by the certificate owner. 5) the identity of the pricing mechanism used (including provisions for Black-Scholes or similar options pricing models, futures, or other similar mechanisms)

Additionally, use restrictions or rules associated with the bandwidth being contracted for/to can be added as additional fields. These might include predetermined agreements which assist in defining the application of the bandwidth right to an applicable market or markets. There may also be provisions for including functional data, software or executable computer code, or algorithms, to the bandwidth right cryptographic certificate to reduce computational overhead at the sender or receiver end of a transmission.

The exchange creates a central hub, or plurality of hubs, for planning bandwidth supply, accounting, and disseminating pricing information. This hub may take the form of a syndication or plurality of similarly suited exchanges or there may be exchange rate features to account for differences between telecommunications costs in a given locality or geographic location (such as a country, city or states). Differences may exist between exchanges in the types of cryptographic protocols which are used by the exchange, as well. Alternatively, the differences between how pricing information is disseminated between various exchanges will relate specifically to the cost of the telecommunications (i.e., “intrinsic value”) based on the form of deployment (POTS versus cable) or spectrum being handled (wireless 900 MHz versus 3 G). In some cases, spectrum allocation may suffer from other market pressures in pricing including government control or some other similar restriction for how the bandwidth may be allocated or used. Client-side software will value the rights relative to a particular user's needs, and used by any party trading rights. A seller creates a SELL advertisement, which is entered into the “exchange.” The exchange verifies the seller actually holds the right in their account.

The exchange may further maintain records regarding the reputations of the market of SELLERS and BUYERS who have traded on the exchange. Additionally, embodiments of the present invention may separate the trading facility from the facilities for advertising BUY and SELL orders. A buyer then enters a BUY offer against the sell advertisement. The exchange validates the buyers and sellers, and then clears the transaction, transferring money from the buyer's payment method or credentials (credit card, micropayment, payment facility, credit terms, etc.) to the sellers account, and the right to the buyer's account. The unbundled right may be so infinitesimal that the actual cost of the right must be bundled with the underlying content or information being sought. The rights could also be bound to underlying titles (by an associated hash or digital signature or an embedded digital watermark). Essentially the relative cost of the bandwidth right represents some small amount of bandwidth, satisfactory in serving as a cryptographic or trusted piece of information, which is factored into various classes of trades so that higher computational efficiencies can be maintained. As certain bandwidth certificate attributes are used more frequently, perhaps, than others who are buyers or sellers or both, of bandwidth rights, smaller more compact amounts of bandwidth will likely be result as improvements and experience dictate. This may be similar to attaching sales taxes, handling charges, and credit card use charges that are typically bundled with the cost of a given physical goods purchase. The underlying telecommunications cost (i.e., “intrinsic value”), the underlying computational cost of the bandwidth certificate and its attributes, as well as additional information overhead for accounting and clearing trades, would represent the cost floor in computational cost, bandwidth, and time for embodiments contemplated herein.

When bandwidth is actually traded some link between the original trade for the bandwidth being supplied may be hashed or signed and used as a transaction receipt for the data that is later sent using the transacted bandwidth. This data can alternatively serve as a record of trades for dispute resolution or accounting to keep all participants informed. Once the actual transacted bandwidth is used by an end user, embedding bandwidth rights, bandwidth certificates, transaction-related unique information (for instance, hashes, signatures, times stamps, etc.) with digital watermarking technology has the further benefit of keeping the file size of the bandwidth once it is used in the form of a data object being exchanged or streamed. It is clearly an option with benefits for embodiments of the present invention. Again, a separate certification authority or government-agency may ultimately serve as the arbiter of trust in enabling economic, transparent and liquid markets for bandwidth use.

Sample Embodiment

User A has a cellular phone and a personal digital assistant (“PDA”). He pays a fixed rate of $100 per month for 1000 minutes of cellular air time (which equates to $0.00167 per second). There are times at which this rate may be higher or lower or locations for which charges may be assessed when the use utilizes either device in some geographic location outside of, for instance, the location where the devices were registered for use. The user alternatively pays $200 per month for 1000 minutes for PDA connectivity (which equates to $0.00333 per second), which may include e-mail functions, image or audio file downloads or streams, and any other functionality commonly attributable to a general computing device such as a PC. The PDA may also place a cost structure on where the device is used in relation to its registration location and may charge for the amount of data which is uploaded, downloaded or exchanged. This may be measured in bandwidth terms (such as a charge per some amount of bytes or bits). The functionality being different for each device, an arbitrage opportunity exists if the user can trade his cellular phone minutes for PDA minutes. The benefits in this example are a 2:1 ratio of expense.

User A may want to use either of the devices in the example to make some purchase of a good or service which can be handled by the device itself. The security for the transaction must have been previously agreed to by the vendor providing the goods and the provider of the device for which embodiments of the present invention can be used to facilitate a commercial transaction. For instance, a vending machine which can handle transmissions from either of the two devices to enable a transaction for a can of soda or a weather forecast, or some other valued consideration, is a device with which the present invention has applicability. The user has bandwidth rights which may be separate from the minutes that have been paid for solely for the functions of the respective device. The user may use a valid or existing bandwidth rights certificate to represent a payment facility for which the cellular or PDA bandwidth provider can monitor and account. If the transaction can be handled with the vending machine, for instance a wireless exchange of credentials between the vending machine and user's device, value has been attributed to the use of bandwidth. The cellular phone, in this example is the cheaper mode of bandwidth based strictly on functionality. The PDA provider may change its pricing to reflect transaction specific pricing to have competitive payment facilities based on bandwidth rights certificates and higher value added services to the customer.

The point of this embodiment is to emphasize the treatment of bandwidth as a commodity which may be valued in a transaction. The value inherent in information content or the facility of information itself to assist in transactional activity is valuable in an information economy. The time it takes for sender and receiver confirmation of a transaction between the user and the vending machine may take, say 5 seconds. The time spent in completing the transaction includes how much information was exchanged, in some quantitative measure such as bits, to satisfy the rules of a successful transaction. If the vending machine item is one dollar, the cost of the transaction is one dollar plus the cost of 5 seconds of air time that was used to consummate the transaction. Hence the total cost is: $1.00+5×$0.00167 (or $1.00833), if the cell phone is used; or $1.00+5×$0.00333 (or $1.01667), if the PDA is used. The cost of the goods or services sold leaves a margin of profit. There is a relationship to the efficiencies of increasing the convenience of a means of payment for users, increasing the ability of traditional bandwidth providers to leverage existing subscriptions and arrangements with customers, and the ability to atomize bandwidth as a valued commodity given its inherent nature: it is a measure of information in discrete time.

Sample Embodiment

In this embodiment we use bandwidth to purchase other information resources such as kilowatts of power from a utility power grid. As such, bandwidth acts as a currency which has a defined (though perhaps fluctuating) value. The amount of bandwidth that is used to “purchase” a specified amount of power will be determined based on the market forces at play. The total amount of bandwidth will be the cost of the goods being purchased (in this case, the specified amount of power) plus the cost of the bandwidth used to complete the transaction—which may vary with the communication channel being used (e.g., the use of a PDA vs. the use of a cell phone). In effect, “bandwidth” is removed from my account in an amount necessary to complete the transaction. To further illustrate this point, it is assumed that the amount of power being purchased is valued at $50, and it is further assumed that the transaction requires 5 seconds of air time to complete. If the purchaser has an account balance of 60,000 seconds of air time (equating to 1,000 minutes), and the fair market value of the air time is $0.00167 per second, then the purchaser's account is debited 29,945 seconds (equating to $50.00835—in other words, the $50 for the power plus the cost of the air time to complete the transaction). In some circumstances, the total cost may be increased if there is a transactional cost in addition to the cost of goods and the cost of air time. For example, if the airtime is tied to a credit card, the credit card company may charge a transactional fee (e.g., 1% or more) for all transactions executed in connection with the credit card, in which case, the credit card may debit the purchaser's account an additional 1% of air time (by way of example) which the credit card company may utilize for internal purposes or may turn around and re-sell to another user.

Other embodiments and uses of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. All references cited herein, including all U.S. and foreign patents and patent applications, are specifically and entirely hereby incorporated by reference herein. It is intended that the specification and examples be considered exemplary only, with the true scope and spirit of the invention indicated by the claims below. As will be easily understood by those of ordinary skill in the art, variations and modifications of each of the disclosed embodiments can be easily made within the scope of this invention as defined by the claims below. 

1-62. (canceled)
 63. A method for providing a quality of service in a network, comprising: ranking, with a processor, routes between two nodes of said network based upon at least one of current load; historical load; historical reliability; current latency; and historical latency; and routing, with a router, a packet of a plurality of packets transmitting a signal between said two nodes based upon a quality of service associated with a packet watermark in the packet and said ranking.
 64. The method of claim 63, further comprising providing a cryptographic association between a watermark key and the signal via said packet watermark, so that said packet watermark is a key based watermark.
 65. The method of claim 64, further comprising determining, in a packet watermark sniffer, whether said packet watermark was cryptographically associated with said signal and said key.
 66. The method of claim 63, wherein said routing is based upon heuristic or Bayesian methods.
 67. The method of claim 63, further comprising generating a watermark identification (WID) as a function of a portion of said signal; said packet watermark; and a watermark key, and determining whether both said packet watermark with said watermark identification (WID) store the same unique identifier.
 68. A network intrusion detection system for determining whether a data stream comprising at least one data packet includes unauthorized data, the system comprising: at least one memory for storing digital data; at least one processor for processing digital data; a network node comprising a packet sniffer; wherein said at least one memory stores a set of route histories indicative of a path in a network comprising said network node, each routing history of said set of route histories indicative of unauthorized data; a data stream comprises a plurality of data packets comprising a selected data packet having a selected data packet first portion and a selected data packet second portion; and wherein said packet sniffer is configured to use said set of route histories stored in said at least one memory and said data packet first portion to make an determination indicative of whether data is authorized or unauthorized.
 69. The system of claim 68 wherein said at least one memory stores routing information selected from the group consisting of authorization data to authorize use of a router and priority data to prioritize use of said router.
 70. The system of claim 68 wherein said packet sniffer utilizes at least one of heuristic or Bayesian methods in making said determination.
 71. The system of claim 68 wherein said packet sniffer considers data indicative of at least one of recognition, reputation, routes, parties, and combinations thereof, in making said determination.
 72. The system of claim 68 further comprising a router; wherein said router comprises a network receiver to receive a transmitted packet that has been transmitted across a network; wherein said transmitted packet has a transmitted packet first portion and a transmitted packet second portion; and wherein said router comprises a network processor coupled to said network receiver for analyzing said transmitted packet to determine said transmitted packet first portion.
 73. The system of claim 68 wherein said data stream comprises a plurality of data packets and said system is configured to reroute, delay, or halt said data stream depending upon said determination.
 74. The system of claim 68 wherein each one of said plurality of data packets in said data stream is cryptographically associated with a key.
 75. The system of claim 68 wherein a key cryptographically associates said first portion of said packet with said second portion of said packet.
 76. The system of claim 68 wherein said data stream comprises a plurality of data packets each of which has a same key that cryptographically associates a first portion of each one of said plurality of data packets with a second portion of the same one of said plurality of data packets.
 77. A method of discriminating between different data streams, comprising: detecting a presence of one or more of a first set of authorization data and priority data in a data stream, using a intrusion detection system comprising at least one memory storing data in non transient form and at least one processor; determining, by the intrusion detection system, based on analysis of the data stream and data stored in said at least one memory, whether a packet in the data stream belongs to one of a plurality of data flows to be further inspected; and applying, by the intrusion detection system, to the packet, only if the intrusion detection system has determined that the packet belongs to one of the plurality of data flows to be further inspected and only if a presence of one or more of a first set of authorization data and priority data has been detected in the packet, a set of criteria to discriminate between different flows based at least in part upon said first set of authorization data and priority data.
 78. The method of claim 77, further comprising determining if the packet includes unauthorized data.
 79. The method of claim 77 further comprising discriminating between different flows based upon results of application of said set of criteria.
 80. The method of claim 77 further comprising storing in memory, in non transient form, routing information selected from the group consisting of authorization data to authorize use of at least one particular router and priority data to prioritize use of at least one particular router.
 81. A router for routing packets in a network, comprising: a processor and memory for storing data in non transient form; structure for receiving a transmission comprising a stream of packets, wherein said router is configured to use said processor and said memory to analyze the transmission and to check authenticity of the transmission; and wherein said router is configured to terminate, delay, or reroute said transmission, if said router determines that at least one of the stream of packets is disallowed.
 82. The router of claim 81, wherein said router is configured to terminate said transmission, if said router determines that at least one of the stream of packets is disallowed.
 83. The router of claim 81, wherein said router is configured to terminate said transmission, if said router determines that any one of the stream of packets is disallowed.
 84. A method of routing packets in a network, comprising: forming, using memory for storing data in non-transient form, and a processor coupled to said memory, a packet watermark by using a key and a signal; forming, using said processor, a packet containing said packet watermark and a portion of said signal; transmitting said packet from a node of said network.
 85. A method of inspecting a packet at a node of a network, comprising: receiving at least one packet at said node; performing, using a processor and memory at said node, a hash function on a watermark identification (WID) and at least said at least one packet; determining said processor, whether the output of said hash function and a WID stored in said at least one packet match.
 86. A method for processing packets being transmitted in a packet switched network, comprising: a first device of the network modifying a signal so that it is represented by a stream of packets containing packet watermarks; transmitting said stream of packets from said first device of the network via said network to a second device of the network; said second device of the network determining whether at least one of the packets of said stream of packets contains a packet watermark that is cryptographically associated with at least a portion of signal contained in said at least one of the packets.
 87. The method of claim 90, further comprising determining at least one of priority and network route for said at least one of the packets, based upon said packet watermark and values stored in a memory of said second device.
 88. A system by which a sender can guarantee a particular Quality of Service (QoS) to a receiver without entering into a cryptographic exchange with the receiver, for delivery of a data object to the receiver, wherein the data object is transmitted in a flow of data packets, using packet watermarking, comprising: a router; wherein said router comprises a receiver; wherein said router comprises a transmitter; wherein said router comprises a processor; wherein said transmitter is designed to receive data packets; wherein said transmitter is designed to transmit data packets; wherein said router is designed to examines a data packet to determine from the data packet a recipient's IP address and a packet watermark; wherein said router is designed to determine a next-hop IP address to which to transmit said data packet, based at least in part upon the recipient's IP address and the packet watermark.
 89. The system of claim 88: wherein said flow of data packets contains the data defining said data object; wherein said router is designed to hash a watermark key with that portion of the data object's data contained in at least one of the data packets in the flow, to generate a flow hash value.
 90. The system of claim 88, wherein said router is designed to compare said flow hash value with a stored value, to result in comparison.
 91. The system of claim 88, wherein said router is designed to determine said next-hop IP address based at least in part upon the recipient's IP address, the packet watermark the router identifies as being present in said data packet, and the result of said comparison.
 92. The system of claim 88, wherein said router is designed to determine said next-hop IP address based at least in part upon the recipient's IP address, the packet watermark the router identifies as being present in said data packet, and a QoS value stored in said packet watermark. 